package com.tanhua.server.exception;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @Description: test
 * @Create by: JJ菜菜
 * @Date: 2021/11/29 23:07
 *
 *  为了方便操作将一些常见的业务业务错误封装到ErrorResult。
 */

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ErrorResult {

    /**
     *
     *   builder方法，提供在设计数据实体的时候， 对外采用的是private setter方法， 而对属性的赋值采用的是Builder的方式
     */

    private String errCode;
    private String errMessage;

    public static ErrorResult error(){

        return ErrorResult.builder()
                .errCode("999999")
                .errMessage("系统异常稍后再试")
                .build();
    }

    public static ErrorResult file(){

        return ErrorResult.builder()
                .errCode("000001")
                .errMessage("发送验证码失败")
                .build();
    }

    public static ErrorResult loginError(){

        return ErrorResult.builder()
                .errCode("000002")
                .errMessage("验证码失效")
                .build();
    }

    public static ErrorResult faceError(){

        return ErrorResult.builder()
                .errCode("000003")
                .errMessage("图像非人像，请重新上传")
                .build();
    }

    public static ErrorResult mobileError() {

        return ErrorResult.builder()
                .errCode("000004")
                .errMessage("手机号码已注册")
                .build();
    }

    public static ErrorResult contentError() {

        return ErrorResult.builder()
                .errCode("000005")
                .errMessage("动态内容为空")
                .build();
    }

    public static ErrorResult likeError() {

        return ErrorResult.builder()
                .errCode("000006")
                .errMessage("用户已点赞")
                .build();
    }

    public static ErrorResult disLikeError() {

        return ErrorResult.builder()
                .errCode("000007")
                .errMessage("用户未点赞")
                .build();
    }

    public static ErrorResult loveError() {

        return ErrorResult.builder()
                .errCode("000008")
                .errMessage("用户已喜欢")
                .build();
    }

    public static ErrorResult disloveError() {

        return ErrorResult.builder()
                .errCode("000009")
                .errMessage("用户未喜欢")
                .build();
    }
}
